/*
 * Decompiled with CFR 0.150.
 * 
 * Could not load the following classes:
 *  cn.hutool.core.collection.CollUtil
 *  cn.hutool.core.date.DateUtil
 *  cn.hutool.core.util.ObjectUtil
 *  cn.hutool.core.util.StrUtil
 *  com.alibaba.fastjson.JSON
 *  com.alibaba.fastjson.JSONObject
 *  de.felixroske.jfxsupport.FXMLController
 *  javafx.beans.value.ChangeListener
 *  javafx.beans.value.ObservableValue
 *  javafx.collections.FXCollections
 *  javafx.collections.ObservableList
 *  javafx.event.ActionEvent
 *  javafx.event.EventHandler
 *  javafx.fxml.FXML
 *  javafx.fxml.Initializable
 *  javafx.geometry.Insets
 *  javafx.scene.Node
 *  javafx.scene.control.Alert
 *  javafx.scene.control.Alert$AlertType
 *  javafx.scene.control.Button
 *  javafx.scene.control.CheckBox
 *  javafx.scene.control.ChoiceBox
 *  javafx.scene.control.ComboBox
 *  javafx.scene.control.DatePicker
 *  javafx.scene.control.Pagination
 *  javafx.scene.control.ScrollPane
 *  javafx.scene.control.TableCell
 *  javafx.scene.control.TableColumn
 *  javafx.scene.control.TableView
 *  javafx.scene.control.TextField
 *  javafx.scene.control.cell.PropertyValueFactory
 *  javafx.scene.control.cell.TextFieldTableCell
 *  javafx.scene.input.KeyCode
 *  javafx.scene.input.KeyEvent
 *  javafx.scene.layout.HBox
 *  javafx.scene.layout.VBox
 *  javafx.scene.text.Text
 *  javafx.stage.Modality
 *  javafx.util.Callback
 *  javafx.util.StringConverter
 *  org.springframework.beans.factory.annotation.Autowired
 *  org.springframework.util.CollectionUtils
 */
package com.gys.controller.acceptPo;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gys.GysApplication;
import com.gys.common.business.AcceptUtil;
import com.gys.common.business.SaleScheduleSettingUtil;
import com.gys.common.data.HttpJson;
import com.gys.common.data.PageInfo;
import com.gys.common.plugIn.dateTimePicker.DateTimePicker;
import com.gys.common.util.CacheUtil;
import com.gys.common.util.CommonUtil;
import com.gys.common.util.ConstUtil;
import com.gys.controller.BaseController;
import com.gys.controller.acceptPo.AddTypeController;
import com.gys.controller.index.IndexController;
import com.gys.data.accept.AcceptDetailOutData;
import com.gys.data.accept.AcceptInData;
import com.gys.data.accept.AcceptOutData;
import com.gys.data.accept.GsdcEmp;
import com.gys.data.deviceCheck.GsdcStatus;
import com.gys.data.example.GetLoginStoreOutData;
import com.gys.data.example.GetUserOutData;
import com.gys.data.saleScheduleSetting.GetSaleScheduleInData;
import com.gys.view.acceptPo.AddTypeView;
import com.gys.view.acceptPo.ChooseProduct;
import de.felixroske.jfxsupport.FXMLController;
import java.lang.reflect.Method;
import java.math.BigDecimal;
import java.net.URL;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.ResourceBundle;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.geometry.Insets;
import javafx.scene.Node;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.CheckBox;
import javafx.scene.control.ChoiceBox;
import javafx.scene.control.ComboBox;
import javafx.scene.control.DatePicker;
import javafx.scene.control.Pagination;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.control.cell.TextFieldTableCell;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.text.Text;
import javafx.stage.Modality;
import javafx.util.Callback;
import javafx.util.StringConverter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;

@FXMLController
public class AcceptPoController
extends BaseController
implements Initializable {
    private final int pageSize = ConstUtil.DEFAULT_PAGESIZE;
    private final int defaultPageCount = ConstUtil.DEFAULT_PAGECOUNT;
    private ObservableList<AcceptOutData> basicObservableTableList = FXCollections.observableArrayList(new ArrayList());
    private ObservableList<AcceptOutData> observableTableList = FXCollections.observableArrayList(new ArrayList());
    private ObservableList<AcceptDetailOutData> detailObservableTableList = FXCollections.observableArrayList(new ArrayList());
    @FXML
    private ScrollPane scrollPane;
    @FXML
    private VBox vBox;
    @FXML
    private Button addBtn;
    @FXML
    private Button enterBtn;
    @FXML
    private Button approveBtn;
    @FXML
    private HBox queryHbox;
    @FXML
    private HBox queryHbox1;
    @FXML
    private HBox boxView;
    @FXML
    private TextField voucherIdQuery;
    @FXML
    private TextField amountQuery;
    @FXML
    private TextField bathCodeQuery;
    @FXML
    private TextField productCodeQuery;
    @FXML
    private ChoiceBox<GsdcEmp> acceptPeopleQuery;
    @FXML
    private ChoiceBox<GsdcStatus> statusQuery;
    @FXML
    private DatePicker updateDateQuery;
    @FXML
    private DatePicker acceptDateQuery;
    @FXML
    private TableView<AcceptOutData> tableView;
    @FXML
    private TableView<AcceptOutData> tableViewTwo;
    @FXML
    private TableView<AcceptDetailOutData> tableViewThree;
    @FXML
    private TableColumn<AcceptOutData, CheckBox> checkBox;
    @FXML
    private TableColumn<AcceptOutData, String> index;
    @FXML
    private TableColumn<AcceptOutData, String> gsahPoid;
    @FXML
    private TableColumn<AcceptOutData, String> orderDate;
    @FXML
    private TableColumn<AcceptOutData, String> gsahDeparturePlace;
    @FXML
    private TableColumn<AcceptOutData, String> gsahDepartureTime;
    @FXML
    private TableColumn<AcceptOutData, String> gsahDepartureTemperature;
    @FXML
    private TableColumn<AcceptOutData, String> gsahArriveDate;
    @FXML
    private TableColumn<AcceptOutData, String> gsahArriveTime;
    @FXML
    private TableColumn<AcceptOutData, String> gsahArriveTemperature;
    @FXML
    private TableColumn<AcceptOutData, String> gsahTransportOrganization;
    @FXML
    private TableColumn<AcceptOutData, String> gsahTransportMode;
    @FXML
    private TableColumn<AcceptOutData, String> gsahVoucherId;
    @FXML
    private TableColumn<AcceptOutData, String> gsahDate;
    @FXML
    private TableColumn<AcceptOutData, String> gsahFrom;
    @FXML
    private TableColumn<AcceptOutData, String> gsahTo;
    @FXML
    private TableColumn<AcceptOutData, String> gsahType;
    @FXML
    private TableColumn<AcceptOutData, String> gsahStatus;
    @FXML
    private TableColumn<AcceptOutData, String> gsahTotalAmt;
    @FXML
    private TableColumn<AcceptOutData, String> gsahTotalQty;
    @FXML
    private TableColumn<AcceptOutData, String> gsahEmp;
    @FXML
    private TableColumn<AcceptOutData, String> gsahRemaks;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadSerial;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadProId;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadBatchNo;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadValidDate;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadInvoicesQty;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadRecipientQty;
    @FXML
    private TableColumn<AcceptDetailOutData, String> gsadStockStatus;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proName;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proFactoryName;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proPlace;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proPrice;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proForm;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proUnit;
    @FXML
    private TableColumn<AcceptDetailOutData, String> proSpecs;
    @FXML
    private Pagination pagination;
    @FXML
    private Insets tableViewInsets;
    @Autowired
    private AddTypeController addTypeController;
    @Autowired
    private IndexController indexController;
    List<GetUserOutData> outDataList = new ArrayList<GetUserOutData>();
    private ObservableList<String> empOptions;
    List<String> emps = new ArrayList<String>();
    Map<String, GetUserOutData> empsMap = new HashMap<String, GetUserOutData>();

    public void initialize(URL location, ResourceBundle resources) {
        this.scrollPane.setPrefWidth(this.getContentWidth());
        this.scrollPane.setPrefHeight(this.getContentHeight());
        this.vBox.setPrefWidth(this.getContentWidth());
        this.vBox.setPrefHeight(this.getContentHeight());
        this.tableView.setPrefWidth(this.getContentWidth());
        this.tableViewTwo.setPrefWidth(this.getContentWidth());
        this.tableViewThree.setPrefWidth(this.getContentWidth());
        this.pagination.setPrefWidth(this.getContentWidth());
        this.statusQuery.getItems().addAll(this.getAllStatus());
        this.statusQuery.converterProperty().set(new StringConverter<GsdcStatus>(){

            public String toString(GsdcStatus object) {
                return object.getName();
            }

            public GsdcStatus fromString(String string) {
                return null;
            }
        });
        StringConverter converter = CommonUtil.dataPickerFormat("yyyyMMdd");
        this.updateDateQuery.setConverter(converter);
        this.acceptDateQuery.setConverter(converter);
        this.pagination.setPageFactory((Callback)new Callback<Integer, Node>(){

            public Node call(Integer pageNum) {
                return AcceptPoController.this.initTable(pageNum, "");
            }
        });
        this.emps.clear();
        this.outDataList.clear();
        this.empsMap.clear();
        GetSaleScheduleInData inData = new GetSaleScheduleInData();
        inData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
        inData.setGsegBrId(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
        HttpJson httpJson = SaleScheduleSettingUtil.queryUser(CommonUtil.convertToMap(inData));
        if (!httpJson.isSuccess()) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
            alert.showAndWait();
            return;
        }
        this.outDataList = JSON.parseArray((String)httpJson.getMsg(), GetUserOutData.class);
        ArrayList list = new ArrayList();
        this.outDataList.forEach(item -> {
            this.emps.add(item.getLoginName());
            this.empsMap.put(item.getLoginName(), (GetUserOutData)item);
            GsdcEmp emp = new GsdcEmp(item.getUserId(), item.getLoginName());
            list.add(emp);
        });
        this.empOptions = FXCollections.observableArrayList(this.emps);
        this.acceptPeopleQuery.getItems().addAll(list);
        this.acceptPeopleQuery.converterProperty().set(new StringConverter<GsdcEmp>(){

            public String toString(GsdcEmp object) {
                return object.getName();
            }

            public GsdcEmp fromString(String string) {
                return null;
            }
        });
    }

    @Override
    public void init() {
        this.indexController.scrollContentPane.setOnKeyReleased((EventHandler)new EventHandler<KeyEvent>(){

            public void handle(KeyEvent event) {
                if (event.getCode() == KeyCode.F1) {
                    AcceptPoController.this.add();
                    return;
                }
                if (event.getCode() == KeyCode.F8) {
                    AcceptPoController.this.approve();
                    return;
                }
                if (event.getCode() == KeyCode.ENTER) {
                    AcceptPoController.this.searchData();
                }
            }
        });
    }

    @FXML
    private void searchData() {
        Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        if (StrUtil.isBlank((CharSequence)this.voucherIdQuery.getText().trim()) && ObjectUtil.isNull(this.statusQuery.getValue()) && ObjectUtil.isNull(this.acceptPeopleQuery.getValue()) && StrUtil.isBlank((CharSequence)this.productCodeQuery.getText().trim()) && ObjectUtil.isNull(this.updateDateQuery.getValue()) && ObjectUtil.isNull(this.acceptDateQuery.getValue()) && StrUtil.isBlank((CharSequence)this.amountQuery.getText().trim()) && StrUtil.isBlank((CharSequence)this.bathCodeQuery.getText().trim())) {
            alert.setContentText("\u5fc5\u987b\u81f3\u5c11\u586b\u5199\u4e00\u9879\u5185\u5bb9\u8fdb\u884c\u67e5\u8be2\uff01");
            alert.showAndWait();
            return;
        }
        this.initTable(0, "");
        this.pagination.setCurrentPageIndex(0);
    }

    @FXML
    private void reset() {
        this.voucherIdQuery.clear();
        this.amountQuery.clear();
        this.statusQuery.setValue(null);
        this.updateDateQuery.setValue(null);
        this.productCodeQuery.clear();
        this.bathCodeQuery.clear();
        this.acceptPeopleQuery.setValue(null);
        this.acceptDateQuery.setValue(null);
    }

    @FXML
    private void choose() {
        GysApplication.showView(ChooseProduct.class, (Modality)Modality.APPLICATION_MODAL);
    }

    @FXML
    private void add() {
        this.addTypeController.init();
        GysApplication.showView(AddTypeView.class, (Modality)Modality.APPLICATION_MODAL);
    }

    @FXML
    private void approve() {
        Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        List<Integer> indexList = this.getSelectIndex();
        if (ObjectUtil.isEmpty(indexList)) {
            alert.setContentText("\u8bf7\u9009\u62e9\u8bb0\u5f55");
            alert.showAndWait();
            return;
        }
        AcceptInData inData = new AcceptInData();
        for (Integer index : indexList) {
            AcceptOutData outData = (AcceptOutData)this.observableTableList.get(index - 1);
            if (ObjectUtil.isEmpty(outData.getGsahEmp())) {
                alert.setContentText("\u8bf7\u9009\u62e9\u6536\u8d27\u4eba\u5458");
                alert.showAndWait();
                return;
            }
            inData.setGsahEmp(this.empsMap.get(outData.getGsahEmp()).getUserId());
            inData.setGsahVoucherId(outData.getGsahVoucherId());
            inData.setGsahArriveDate(outData.getGsahArriveDate());
            inData.setGsahArriveTemperature(outData.getGsahArriveTemperature());
            inData.setGsahArriveTime(outData.getGsahArriveTime());
            inData.setGsahDeparturePlace(outData.getGsahDeparturePlace());
            inData.setGsahDepartureTemperature(outData.getGsahDepartureTemperature());
            inData.setGsahDepartureTime(outData.getGsahDepartureTime());
            inData.setGsahTransportMode(outData.getGsahTransportMode());
            inData.setGsahTransportOrganization(outData.getGsahTransportOrganization());
        }
        inData.setGsahType("2");
        inData.setAcceptDetailInDataList((List<AcceptDetailOutData>)this.detailObservableTableList);
        HttpJson rsp = AcceptUtil.approve(inData);
        if (rsp.isSuccess()) {
            alert.setContentText("\u5ba1\u6838\u6210\u529f!");
            alert.showAndWait();
            this.initTable(this.pagination.getCurrentPageIndex(), "");
        } else {
            alert.setContentText(rsp.getMsg());
            alert.showAndWait();
        }
    }

    public TableView<AcceptOutData> initTable(int pageNum, String poId) {
        List<AcceptOutData> dataList;
        PageInfo pageInfo;
        HttpJson rsp;
        AcceptInData inData = new AcceptInData();
        inData.setPageNum(pageNum + 1);
        inData.setPageSize(this.pageSize);
        inData.setGsahType("2");
        if (ObjectUtil.isNotEmpty(poId)) {
            inData.setGsahPoid(poId);
        } else {
            inData.setGsahPoid(this.voucherIdQuery.getText().trim());
        }
        if (ObjectUtil.isNotNull(this.statusQuery.getValue())) {
            inData.setGsahStatus(((GsdcStatus)this.statusQuery.getValue()).getCode());
        }
        if (ObjectUtil.isNotNull(this.acceptPeopleQuery.getValue())) {
            inData.setGsahEmp(((GsdcEmp)this.acceptPeopleQuery.getValue()).getCode());
        }
        if (ObjectUtil.isNotEmpty(this.productCodeQuery.getText().trim())) {
            inData.setGsadProId(this.productCodeQuery.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.bathCodeQuery.getText().trim())) {
            inData.setBatchNo(this.bathCodeQuery.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.amountQuery.getText().trim())) {
            inData.setGsahTotalAmt(new BigDecimal(this.amountQuery.getText().trim()));
        }
        if (ObjectUtil.isNotNull(this.updateDateQuery.getValue())) {
            inData.setOrderDate(DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.updateDateQuery.getValue()).toString()), (String)"yyyyMMdd"));
        }
        if (ObjectUtil.isNotNull(this.acceptDateQuery.getValue())) {
            inData.setGsahDate(DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.acceptDateQuery.getValue()).toString()), (String)"yyyyMMdd"));
        }
        if ((rsp = AcceptUtil.selectList(inData)).isSuccess()) {
            pageInfo = (PageInfo)JSON.parseObject((String)rsp.getMsg(), PageInfo.class);
            if (pageInfo != null && CollUtil.isNotEmpty(pageInfo.getList())) {
                ArrayList<AcceptOutData> listTemp = new ArrayList<AcceptOutData>();
                for (int i = 0; i < pageInfo.getList().size(); ++i) {
                    String str = JSONObject.toJSONString(pageInfo.getList().get(i));
                    AcceptOutData outData = (AcceptOutData)JSONObject.parseObject((String)str, AcceptOutData.class);
                    if ("1".equals(outData.getGsahStatus())) {
                        outData.setGsahStatus("\u5df2\u5ba1\u6838");
                    } else {
                        outData.setGsahStatus("\u672a\u5ba1\u6838");
                    }
                    if ("1".equals(outData.getGsahType())) {
                        outData.setGsahType("\u914d\u9001\u5355");
                    } else {
                        outData.setGsahType("\u91c7\u8d2d\u5355");
                    }
                    outData.setIndex(i + 1);
                    listTemp.add(outData);
                }
                pageInfo.setList(listTemp);
            }
        } else {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", rsp.getMsg());
            alert.showAndWait();
            return new TableView();
        }
        if (pageInfo != null && CollUtil.isNotEmpty(pageInfo.getList())) {
            this.pagination.setPageCount(pageInfo.getPages());
            dataList = pageInfo.getList();
        } else {
            this.pagination.setPageCount(this.defaultPageCount);
            dataList = new ArrayList();
        }
        this.basicObservableTableList.clear();
        this.observableTableList.clear();
        this.detailObservableTableList.clear();
        this.observableTableList = FXCollections.observableArrayList(dataList);
        this.bingTableCell();
        this.tableViewTwo.setItems(this.observableTableList);
        return this.tableViewTwo;
    }

    private void bingTableCell() {
        this.index.setCellValueFactory((Callback)new PropertyValueFactory(this.index.getId()));
        this.checkBox.setCellValueFactory(cellData -> ((AcceptOutData)cellData.getValue()).getCheckBox().getCustomCheckBox());
        this.checkBox.setCellFactory(col -> {
            TableCell<AcceptOutData, CheckBox> cell = new TableCell<AcceptOutData, CheckBox>(){

                protected void updateItem(CheckBox item, boolean empty) {
                    super.updateItem(item, empty);
                    this.setGraphic((Node)item);
                    if (item != null) {
                        item.setOnMouseClicked(col -> {
                            if (CollUtil.isEmpty((Collection)AcceptPoController.this.observableTableList)) {
                                return;
                            }
                            int index = this.getIndex();
                            for (int i = 0; i < AcceptPoController.this.observableTableList.size(); ++i) {
                                if (i == index) continue;
                                ((AcceptOutData)AcceptPoController.this.observableTableList.get(i)).getCheckBox().setSelectStatus(false);
                            }
                            if (((AcceptOutData)AcceptPoController.this.observableTableList.get(index)).getCheckBox().isSelected().booleanValue() && ObjectUtil.isNotEmpty(((AcceptOutData)AcceptPoController.this.observableTableList.get(index)).getGsahVoucherId())) {
                                ArrayList<AcceptOutData> list = new ArrayList<AcceptOutData>();
                                list.add(AcceptPoController.this.observableTableList.get(index));
                                AcceptPoController.this.initBasicTableView(list);
                                AcceptInData inData = new AcceptInData();
                                inData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
                                inData.setStoreCode(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
                                inData.setGsahVoucherId(((AcceptOutData)AcceptPoController.this.observableTableList.get(index)).getGsahVoucherId());
                                List<AcceptDetailOutData> dataList = new ArrayList();
                                HttpJson httpJson = AcceptUtil.queryDetail(inData);
                                if (httpJson.isSuccess()) {
                                    dataList = JSON.parseArray((String)httpJson.getMsg(), AcceptDetailOutData.class);
                                } else {
                                    Alert alert = AcceptPoController.this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
                                    alert.showAndWait();
                                }
                                for (AcceptDetailOutData outData : dataList) {
                                    if ("1".equals(outData.getGsadStockStatus())) {
                                        outData.setGsadStockStatus("\u5df2\u6536\u8d27");
                                        continue;
                                    }
                                    outData.setGsadStockStatus("\u672a\u6536\u8d27");
                                }
                                AcceptPoController.this.initDetailTableView(dataList);
                                if ("\u672a\u5ba1\u6838".equals(((AcceptOutData)AcceptPoController.this.observableTableList.get(index)).getGsahStatus())) {
                                    AcceptPoController.this.tableView.setEditable(true);
                                    AcceptPoController.this.tableViewTwo.setEditable(true);
                                    AcceptPoController.this.tableViewThree.setEditable(true);
                                    AcceptPoController.this.approveBtn.setDisable(false);
                                    AcceptPoController.this.changeToTextFieldEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDeparturePlace);
                                    AcceptPoController.this.begAndEndTimeEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDepartureTime);
                                    AcceptPoController.this.changeToTextFieldEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDepartureTemperature);
                                    AcceptPoController.this.begAndEndTimeEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveTime);
                                    AcceptPoController.this.begAndEndDateEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveDate);
                                    AcceptPoController.this.changeToTextFieldEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveTemperature);
                                    AcceptPoController.this.changeToTextFieldEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahTransportOrganization);
                                    AcceptPoController.this.changeToTextFieldEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahTransportMode);
                                    AcceptPoController.this.gsegChangeToComBoxEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahEmp, (ObservableList<String>)AcceptPoController.this.empOptions);
                                    AcceptPoController.this.changeToTextFieldDEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadRecipientQty);
                                    AcceptPoController.this.changeToTextFieldDEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadBatchNo);
                                    AcceptPoController.this.changeToTextFieldDEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadValidDate);
                                } else {
                                    AcceptPoController.this.tableView.setEditable(false);
                                    AcceptPoController.this.tableViewTwo.setEditable(false);
                                    AcceptPoController.this.tableViewThree.setEditable(false);
                                    AcceptPoController.this.approveBtn.setDisable(true);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDeparturePlace);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDepartureTime);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDepartureTemperature);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveTime);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveDate);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveTemperature);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahTransportOrganization);
                                    AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahTransportMode);
                                    AcceptPoController.this.clearComBoxEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahEmp, (ObservableList<String>)AcceptPoController.this.empOptions);
                                    AcceptPoController.this.clearDetailEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadRecipientQty);
                                    AcceptPoController.this.clearDetailEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadBatchNo);
                                    AcceptPoController.this.clearDetailEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadValidDate);
                                }
                            } else {
                                AcceptPoController.this.detailObservableTableList.clear();
                                AcceptPoController.this.basicObservableTableList.clear();
                                AcceptPoController.this.tableView.setEditable(false);
                                AcceptPoController.this.tableViewTwo.setEditable(false);
                                AcceptPoController.this.tableViewThree.setEditable(false);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDeparturePlace);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDepartureTime);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahDepartureTemperature);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveTime);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveDate);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahArriveTemperature);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahTransportOrganization);
                                AcceptPoController.this.clearEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahTransportMode);
                                AcceptPoController.this.clearComBoxEdit((TableColumn<AcceptOutData, String>)AcceptPoController.this.gsahEmp, (ObservableList<String>)AcceptPoController.this.empOptions);
                                AcceptPoController.this.clearDetailEdit((TableColumn<AcceptDetailOutData, String>)AcceptPoController.this.gsadRecipientQty);
                            }
                        });
                    }
                }
            };
            return cell;
        });
        this.gsahVoucherId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahVoucherId.getId()));
        this.gsahDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahDate.getId()));
        this.gsahFrom.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahFrom.getId()));
        this.gsahTo.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahTo.getId()));
        this.gsahType.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahType.getId()));
        this.gsahStatus.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahStatus.getId()));
        this.gsahTotalAmt.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahTotalAmt.getId()));
        this.gsahTotalQty.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahTotalQty.getId()));
        this.gsahEmp.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahEmp.getId()));
        this.gsahRemaks.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahRemaks.getId()));
    }

    private TableView<AcceptOutData> initBasicTableView(List<AcceptOutData> dataList) {
        this.basicObservableTableList.clear();
        this.basicObservableTableList = FXCollections.observableArrayList(dataList);
        this.gsahPoid.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahPoid.getId()));
        this.orderDate.setCellValueFactory((Callback)new PropertyValueFactory(this.orderDate.getId()));
        this.gsahDeparturePlace.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahDeparturePlace.getId()));
        this.gsahDepartureTime.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahDepartureTime.getId()));
        this.gsahDepartureTemperature.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahDepartureTemperature.getId()));
        this.gsahArriveDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahArriveDate.getId()));
        this.gsahArriveTime.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahArriveTime.getId()));
        this.gsahArriveTemperature.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahArriveTemperature.getId()));
        this.gsahTransportOrganization.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahTransportOrganization.getId()));
        this.gsahTransportMode.setCellValueFactory((Callback)new PropertyValueFactory(this.gsahTransportMode.getId()));
        this.editTableCell(this.gsahDeparturePlace);
        this.editTableCell(this.gsahDepartureTemperature);
        this.editTableCell(this.gsahArriveTemperature);
        this.editTableCell(this.gsahTransportOrganization);
        this.editTableCell(this.gsahTransportMode);
        this.editdTableCell(this.gsadRecipientQty);
        this.tableView.setItems(this.basicObservableTableList);
        return this.tableView;
    }

    private TableView<AcceptDetailOutData> initDetailTableView(List<AcceptDetailOutData> dataList) {
        this.detailObservableTableList.clear();
        this.detailObservableTableList = FXCollections.observableArrayList(dataList);
        this.bingDetailTableCell();
        this.editdTableCell(this.gsadRecipientQty);
        this.tableViewThree.setItems(this.detailObservableTableList);
        return this.tableViewThree;
    }

    private void bingDetailTableCell() {
        this.gsadSerial.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadSerial.getId()));
        this.gsadProId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadProId.getId()));
        this.gsadBatchNo.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadBatchNo.getId()));
        this.gsadValidDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadValidDate.getId()));
        this.gsadInvoicesQty.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadInvoicesQty.getId()));
        this.gsadRecipientQty.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadRecipientQty.getId()));
        this.gsadStockStatus.setCellValueFactory((Callback)new PropertyValueFactory(this.gsadStockStatus.getId()));
        this.proName.setCellValueFactory((Callback)new PropertyValueFactory(this.proName.getId()));
        this.proFactoryName.setCellValueFactory((Callback)new PropertyValueFactory(this.proFactoryName.getId()));
        this.proPlace.setCellValueFactory((Callback)new PropertyValueFactory(this.proPlace.getId()));
        this.proPrice.setCellValueFactory((Callback)new PropertyValueFactory(this.proPrice.getId()));
        this.proForm.setCellValueFactory((Callback)new PropertyValueFactory(this.proForm.getId()));
        this.proUnit.setCellValueFactory((Callback)new PropertyValueFactory(this.proUnit.getId()));
        this.proSpecs.setCellValueFactory((Callback)new PropertyValueFactory(this.proSpecs.getId()));
    }

    private void editTableCell(TableColumn<AcceptOutData, String> tableColumn) {
        tableColumn.setCellFactory(TextFieldTableCell.forTableColumn());
        tableColumn.setOnEditCommit(t -> {
            AcceptOutData line = (AcceptOutData)t.getTableView().getItems().get(t.getTablePosition().getRow());
            String methodName = CommonUtil.getSetMethod(tableColumn.getId());
            try {
                Method method = AcceptOutData.class.getMethod(methodName, String.class);
                method.invoke(line, t.getNewValue());
            }
            catch (Exception e) {
                throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
            }
        });
        tableColumn.setOnEditStart(t -> {
            AcceptOutData line = (AcceptOutData)t.getTableView().getItems().get(t.getTablePosition().getRow());
            List<Integer> indexList = this.getSelectIndex();
        });
    }

    private void editdTableCell(TableColumn<AcceptDetailOutData, String> tableColumn) {
        tableColumn.setCellFactory(TextFieldTableCell.forTableColumn());
        tableColumn.setOnEditCommit(t -> {
            AcceptDetailOutData line = (AcceptDetailOutData)t.getTableView().getItems().get(t.getTablePosition().getRow());
            String methodName = CommonUtil.getSetMethod(tableColumn.getId());
            try {
                Method method = AcceptOutData.class.getMethod(methodName, String.class);
                method.invoke(line, t.getNewValue());
            }
            catch (Exception e) {
                throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
            }
        });
        tableColumn.setOnEditStart(t -> {});
    }

    public void begAndEndTimeEdit(final TableColumn<AcceptOutData, String> column) {
        column.setCellFactory(tc -> {
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        DateTimePicker dateTimePicker = new DateTimePicker(AcceptPoController.this.basicObservableTableList.get(this.getIndex()), column.getId(), String.class);
                        dateTimePicker.setTime(chuzhi);
                        this.setGraphic((Node)dateTimePicker);
                    }
                }
            };
            return cell;
        });
    }

    public void begAndEndDateEdit(TableColumn<AcceptOutData, String> column) {
        column.setCellFactory(tc -> {
            final DatePicker datePicker = new DatePicker();
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        StringConverter converter = CommonUtil.dataPickerFormat("yyyyMMdd");
                        datePicker.setConverter(converter);
                        if (ObjectUtil.isNotEmpty(chuzhi)) {
                            String pdsYear = chuzhi.substring(0, 4);
                            String pdsMonth = chuzhi.substring(4, 6);
                            String pdsDay = chuzhi.substring(6);
                            datePicker.setValue(LocalDate.of((int)Integer.valueOf(pdsYear), Integer.valueOf(pdsMonth), (int)Integer.valueOf(pdsDay)));
                        }
                        this.setGraphic((Node)datePicker);
                    }
                }
            };
            datePicker.setOnAction(arg_0 -> {
                int rank = cell.getIndex();
                String cloumName = cell.getId();
                String value = DateUtil.format((Date)DateUtil.parse((String)((LocalDate)datePicker.getValue()).toString()), (String)"yyyyMMdd");
                List<Integer> indexList = this.getSelectIndex();
                int index = indexList.get(0);
                AcceptOutData outData = (AcceptOutData)this.observableTableList.get(index - 1);
                String methodName = CommonUtil.getSetMethod(cloumName);
                try {
                    Method method = AcceptOutData.class.getMethod(methodName, String.class);
                    method.invoke(outData, value);
                }
                catch (Exception ex) {
                    throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
                }
            });
            return cell;
        });
    }

    public void gsegChangeToComBoxEdit(TableColumn<AcceptOutData, String> column, ObservableList<String> options) {
        column.setCellFactory(tc -> {
            final ComboBox combo = new ComboBox();
            combo.setItems(options);
            combo.setEditable(false);
            combo.setMinHeight(30.0);
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        List indexList = AcceptPoController.this.getSelectIndex();
                        if (indexList.contains(this.getIndex() + 1)) {
                            combo.setValue(chuzhi);
                            this.setGraphic((Node)combo);
                        } else {
                            Text text = new Text();
                            text.setText(chuzhi);
                            this.setGraphic((Node)text);
                        }
                    }
                }
            };
            combo.setOnAction(arg_0 -> this.lambda$null$10((TableCell)cell, combo, (ActionEvent)arg_0));
            return cell;
        });
    }

    public void clearComBoxEdit(TableColumn<AcceptOutData, String> column, ObservableList<String> options) {
        column.setCellFactory(tc -> {
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        Text text = new Text();
                        text.setText(chuzhi);
                        this.setGraphic((Node)text);
                    }
                }
            };
            return cell;
        });
    }

    public void clearEdit(TableColumn<AcceptOutData, String> column) {
        column.setCellFactory(tc -> {
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        Text text = new Text();
                        text.setText(chuzhi);
                        this.setGraphic((Node)text);
                    }
                }
            };
            return cell;
        });
    }

    public void clearDetailEdit(TableColumn<AcceptDetailOutData, String> column) {
        column.setCellFactory(tc -> {
            TableCell<AcceptDetailOutData, String> cell = new TableCell<AcceptDetailOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        Text text = new Text();
                        text.setText(chuzhi);
                        this.setGraphic((Node)text);
                    }
                }
            };
            return cell;
        });
    }

    public void addToTextFieldEdit(TableColumn<AcceptOutData, String> column, final int index) {
        column.setCellFactory(tc -> {
            final TextField textField = new TextField();
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else if (this.getIndex() == index) {
                        textField.setText(chuzhi);
                        this.setGraphic((Node)textField);
                    } else {
                        Text text = new Text();
                        text.setText(chuzhi);
                        this.setGraphic((Node)text);
                    }
                }
            };
            textField.textProperty().addListener(new ChangeListener(){
                final TableCell val_cell;
                final TextField val_textField;
                final int val_index;
                {
                    this.val_cell = cell;
                    this.val_textField = textField;
                    this.val_index = index;
                }

                public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                    int rank = this.val_cell.getIndex();
                    String cloumName = this.val_cell.getId();
                    String value = this.val_textField.getText();
                    AcceptOutData outData = (AcceptOutData)AcceptPoController.this.observableTableList.get(this.val_index);
                    String methodName = CommonUtil.getSetMethod(cloumName);
                    try {
                        Method method = AcceptOutData.class.getMethod(methodName, String.class);
                        method.invoke(outData, value);
                    }
                    catch (Exception ex) {
                        throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
                    }
                }
            });
            return cell;
        });
    }

    public void changeToTextFieldEdit(TableColumn<AcceptOutData, String> column) {
        column.setCellFactory(tc -> {
            final TextField textField = new TextField();
            TableCell<AcceptOutData, String> cell = new TableCell<AcceptOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        textField.setText(chuzhi);
                        this.setGraphic((Node)textField);
                    }
                }
            };
            textField.textProperty().addListener(new ChangeListener(){
                final TableCell val_cell;
                final TextField val_textField;
                {
                    this.val_cell = cell;
                    this.val_textField = textField;
                }

                public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                    int rank = this.val_cell.getIndex();
                    String cloumName = this.val_cell.getId();
                    String value = this.val_textField.getText();
                    List indexList = AcceptPoController.this.getSelectIndex();
                    int index = (Integer)indexList.get(0);
                    AcceptOutData outData = (AcceptOutData)AcceptPoController.this.observableTableList.get(index - 1);
                    String methodName = CommonUtil.getSetMethod(cloumName);
                    try {
                        Method method = AcceptOutData.class.getMethod(methodName, String.class);
                        method.invoke(outData, value);
                    }
                    catch (Exception ex) {
                        throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
                    }
                }
            });
            return cell;
        });
    }

    public void changeToTextFieldDEdit(TableColumn<AcceptDetailOutData, String> column) {
        column.setCellFactory(tc -> {
            final TextField textField = new TextField();
            TableCell<AcceptDetailOutData, String> cell = new TableCell<AcceptDetailOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setGraphic(null);
                    } else {
                        textField.setText(chuzhi);
                        this.setGraphic((Node)textField);
                    }
                }
            };
            textField.textProperty().addListener(new ChangeListener(){
                final TableCell val_cell;
                final TextField val_textField;
                {
                    this.val_cell = cell;
                    this.val_textField = textField;
                }

                public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                    int rank = this.val_cell.getIndex();
                    String cloumName = this.val_cell.getId();
                    String value = this.val_textField.getText();
                    AcceptDetailOutData outData = (AcceptDetailOutData)AcceptPoController.this.detailObservableTableList.get(rank);
                    String methodName = CommonUtil.getSetMethod(cloumName);
                    try {
                        Method method = AcceptDetailOutData.class.getMethod(methodName, String.class);
                        method.invoke(outData, value);
                    }
                    catch (Exception ex) {
                        throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
                    }
                }
            });
            return cell;
        });
    }

    private List<GsdcStatus> getAllStatus() {
        ArrayList<GsdcStatus> list = new ArrayList<GsdcStatus>();
        list.add(new GsdcStatus("1", "\u5df2\u5ba1\u6838"));
        list.add(new GsdcStatus("0", "\u672a\u5ba1\u6838"));
        return list;
    }

    private List<Integer> getSelectIndex() {
        ArrayList<Integer> ids = new ArrayList<Integer>();
        if (!CollectionUtils.isEmpty(this.observableTableList)) {
            for (AcceptOutData i : this.observableTableList) {
                if (!i.getCheckBox().isSelected().booleanValue()) continue;
                ids.add(i.getIndex());
            }
        }
        return ids;
    }

    public int getPageSize() {
        return this.pageSize;
    }

    public int getDefaultPageCount() {
        return this.defaultPageCount;
    }

    public ObservableList<AcceptOutData> getBasicObservableTableList() {
        return this.basicObservableTableList;
    }

    public ObservableList<AcceptOutData> getObservableTableList() {
        return this.observableTableList;
    }

    public ObservableList<AcceptDetailOutData> getDetailObservableTableList() {
        return this.detailObservableTableList;
    }

    public ScrollPane getScrollPane() {
        return this.scrollPane;
    }

    public VBox getVBox() {
        return this.vBox;
    }

    public Button getAddBtn() {
        return this.addBtn;
    }

    public Button getEnterBtn() {
        return this.enterBtn;
    }

    public Button getApproveBtn() {
        return this.approveBtn;
    }

    public HBox getQueryHbox() {
        return this.queryHbox;
    }

    public HBox getQueryHbox1() {
        return this.queryHbox1;
    }

    public HBox getBoxView() {
        return this.boxView;
    }

    public TextField getVoucherIdQuery() {
        return this.voucherIdQuery;
    }

    public TextField getAmountQuery() {
        return this.amountQuery;
    }

    public TextField getBathCodeQuery() {
        return this.bathCodeQuery;
    }

    public TextField getProductCodeQuery() {
        return this.productCodeQuery;
    }

    public ChoiceBox<GsdcEmp> getAcceptPeopleQuery() {
        return this.acceptPeopleQuery;
    }

    public ChoiceBox<GsdcStatus> getStatusQuery() {
        return this.statusQuery;
    }

    public DatePicker getUpdateDateQuery() {
        return this.updateDateQuery;
    }

    public DatePicker getAcceptDateQuery() {
        return this.acceptDateQuery;
    }

    public TableView<AcceptOutData> getTableView() {
        return this.tableView;
    }

    public TableView<AcceptOutData> getTableViewTwo() {
        return this.tableViewTwo;
    }

    public TableView<AcceptDetailOutData> getTableViewThree() {
        return this.tableViewThree;
    }

    public TableColumn<AcceptOutData, CheckBox> getCheckBox() {
        return this.checkBox;
    }

    public TableColumn<AcceptOutData, String> getIndex() {
        return this.index;
    }

    public TableColumn<AcceptOutData, String> getGsahPoid() {
        return this.gsahPoid;
    }

    public TableColumn<AcceptOutData, String> getOrderDate() {
        return this.orderDate;
    }

    public TableColumn<AcceptOutData, String> getGsahDeparturePlace() {
        return this.gsahDeparturePlace;
    }

    public TableColumn<AcceptOutData, String> getGsahDepartureTime() {
        return this.gsahDepartureTime;
    }

    public TableColumn<AcceptOutData, String> getGsahDepartureTemperature() {
        return this.gsahDepartureTemperature;
    }

    public TableColumn<AcceptOutData, String> getGsahArriveDate() {
        return this.gsahArriveDate;
    }

    public TableColumn<AcceptOutData, String> getGsahArriveTime() {
        return this.gsahArriveTime;
    }

    public TableColumn<AcceptOutData, String> getGsahArriveTemperature() {
        return this.gsahArriveTemperature;
    }

    public TableColumn<AcceptOutData, String> getGsahTransportOrganization() {
        return this.gsahTransportOrganization;
    }

    public TableColumn<AcceptOutData, String> getGsahTransportMode() {
        return this.gsahTransportMode;
    }

    public TableColumn<AcceptOutData, String> getGsahVoucherId() {
        return this.gsahVoucherId;
    }

    public TableColumn<AcceptOutData, String> getGsahDate() {
        return this.gsahDate;
    }

    public TableColumn<AcceptOutData, String> getGsahFrom() {
        return this.gsahFrom;
    }

    public TableColumn<AcceptOutData, String> getGsahTo() {
        return this.gsahTo;
    }

    public TableColumn<AcceptOutData, String> getGsahType() {
        return this.gsahType;
    }

    public TableColumn<AcceptOutData, String> getGsahStatus() {
        return this.gsahStatus;
    }

    public TableColumn<AcceptOutData, String> getGsahTotalAmt() {
        return this.gsahTotalAmt;
    }

    public TableColumn<AcceptOutData, String> getGsahTotalQty() {
        return this.gsahTotalQty;
    }

    public TableColumn<AcceptOutData, String> getGsahEmp() {
        return this.gsahEmp;
    }

    public TableColumn<AcceptOutData, String> getGsahRemaks() {
        return this.gsahRemaks;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadSerial() {
        return this.gsadSerial;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadProId() {
        return this.gsadProId;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadBatchNo() {
        return this.gsadBatchNo;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadValidDate() {
        return this.gsadValidDate;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadInvoicesQty() {
        return this.gsadInvoicesQty;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadRecipientQty() {
        return this.gsadRecipientQty;
    }

    public TableColumn<AcceptDetailOutData, String> getGsadStockStatus() {
        return this.gsadStockStatus;
    }

    public TableColumn<AcceptDetailOutData, String> getProName() {
        return this.proName;
    }

    public TableColumn<AcceptDetailOutData, String> getProFactoryName() {
        return this.proFactoryName;
    }

    public TableColumn<AcceptDetailOutData, String> getProPlace() {
        return this.proPlace;
    }

    public TableColumn<AcceptDetailOutData, String> getProPrice() {
        return this.proPrice;
    }

    public TableColumn<AcceptDetailOutData, String> getProForm() {
        return this.proForm;
    }

    public TableColumn<AcceptDetailOutData, String> getProUnit() {
        return this.proUnit;
    }

    public TableColumn<AcceptDetailOutData, String> getProSpecs() {
        return this.proSpecs;
    }

    public Pagination getPagination() {
        return this.pagination;
    }

    public Insets getTableViewInsets() {
        return this.tableViewInsets;
    }

    public AddTypeController getAddTypeController() {
        return this.addTypeController;
    }

    public IndexController getIndexController() {
        return this.indexController;
    }

    public List<GetUserOutData> getOutDataList() {
        return this.outDataList;
    }

    public ObservableList<String> getEmpOptions() {
        return this.empOptions;
    }

    public List<String> getEmps() {
        return this.emps;
    }

    public Map<String, GetUserOutData> getEmpsMap() {
        return this.empsMap;
    }

    public void setBasicObservableTableList(ObservableList<AcceptOutData> basicObservableTableList) {
        this.basicObservableTableList = basicObservableTableList;
    }

    public void setObservableTableList(ObservableList<AcceptOutData> observableTableList) {
        this.observableTableList = observableTableList;
    }

    public void setDetailObservableTableList(ObservableList<AcceptDetailOutData> detailObservableTableList) {
        this.detailObservableTableList = detailObservableTableList;
    }

    public void setScrollPane(ScrollPane scrollPane) {
        this.scrollPane = scrollPane;
    }

    public void setVBox(VBox vBox) {
        this.vBox = vBox;
    }

    public void setAddBtn(Button addBtn) {
        this.addBtn = addBtn;
    }

    public void setEnterBtn(Button enterBtn) {
        this.enterBtn = enterBtn;
    }

    public void setApproveBtn(Button approveBtn) {
        this.approveBtn = approveBtn;
    }

    public void setQueryHbox(HBox queryHbox) {
        this.queryHbox = queryHbox;
    }

    public void setQueryHbox1(HBox queryHbox1) {
        this.queryHbox1 = queryHbox1;
    }

    public void setBoxView(HBox boxView) {
        this.boxView = boxView;
    }

    public void setVoucherIdQuery(TextField voucherIdQuery) {
        this.voucherIdQuery = voucherIdQuery;
    }

    public void setAmountQuery(TextField amountQuery) {
        this.amountQuery = amountQuery;
    }

    public void setBathCodeQuery(TextField bathCodeQuery) {
        this.bathCodeQuery = bathCodeQuery;
    }

    public void setProductCodeQuery(TextField productCodeQuery) {
        this.productCodeQuery = productCodeQuery;
    }

    public void setAcceptPeopleQuery(ChoiceBox<GsdcEmp> acceptPeopleQuery) {
        this.acceptPeopleQuery = acceptPeopleQuery;
    }

    public void setStatusQuery(ChoiceBox<GsdcStatus> statusQuery) {
        this.statusQuery = statusQuery;
    }

    public void setUpdateDateQuery(DatePicker updateDateQuery) {
        this.updateDateQuery = updateDateQuery;
    }

    public void setAcceptDateQuery(DatePicker acceptDateQuery) {
        this.acceptDateQuery = acceptDateQuery;
    }

    public void setTableView(TableView<AcceptOutData> tableView) {
        this.tableView = tableView;
    }

    public void setTableViewTwo(TableView<AcceptOutData> tableViewTwo) {
        this.tableViewTwo = tableViewTwo;
    }

    public void setTableViewThree(TableView<AcceptDetailOutData> tableViewThree) {
        this.tableViewThree = tableViewThree;
    }

    public void setCheckBox(TableColumn<AcceptOutData, CheckBox> checkBox) {
        this.checkBox = checkBox;
    }

    public void setIndex(TableColumn<AcceptOutData, String> index) {
        this.index = index;
    }

    public void setGsahPoid(TableColumn<AcceptOutData, String> gsahPoid) {
        this.gsahPoid = gsahPoid;
    }

    public void setOrderDate(TableColumn<AcceptOutData, String> orderDate) {
        this.orderDate = orderDate;
    }

    public void setGsahDeparturePlace(TableColumn<AcceptOutData, String> gsahDeparturePlace) {
        this.gsahDeparturePlace = gsahDeparturePlace;
    }

    public void setGsahDepartureTime(TableColumn<AcceptOutData, String> gsahDepartureTime) {
        this.gsahDepartureTime = gsahDepartureTime;
    }

    public void setGsahDepartureTemperature(TableColumn<AcceptOutData, String> gsahDepartureTemperature) {
        this.gsahDepartureTemperature = gsahDepartureTemperature;
    }

    public void setGsahArriveDate(TableColumn<AcceptOutData, String> gsahArriveDate) {
        this.gsahArriveDate = gsahArriveDate;
    }

    public void setGsahArriveTime(TableColumn<AcceptOutData, String> gsahArriveTime) {
        this.gsahArriveTime = gsahArriveTime;
    }

    public void setGsahArriveTemperature(TableColumn<AcceptOutData, String> gsahArriveTemperature) {
        this.gsahArriveTemperature = gsahArriveTemperature;
    }

    public void setGsahTransportOrganization(TableColumn<AcceptOutData, String> gsahTransportOrganization) {
        this.gsahTransportOrganization = gsahTransportOrganization;
    }

    public void setGsahTransportMode(TableColumn<AcceptOutData, String> gsahTransportMode) {
        this.gsahTransportMode = gsahTransportMode;
    }

    public void setGsahVoucherId(TableColumn<AcceptOutData, String> gsahVoucherId) {
        this.gsahVoucherId = gsahVoucherId;
    }

    public void setGsahDate(TableColumn<AcceptOutData, String> gsahDate) {
        this.gsahDate = gsahDate;
    }

    public void setGsahFrom(TableColumn<AcceptOutData, String> gsahFrom) {
        this.gsahFrom = gsahFrom;
    }

    public void setGsahTo(TableColumn<AcceptOutData, String> gsahTo) {
        this.gsahTo = gsahTo;
    }

    public void setGsahType(TableColumn<AcceptOutData, String> gsahType) {
        this.gsahType = gsahType;
    }

    public void setGsahStatus(TableColumn<AcceptOutData, String> gsahStatus) {
        this.gsahStatus = gsahStatus;
    }

    public void setGsahTotalAmt(TableColumn<AcceptOutData, String> gsahTotalAmt) {
        this.gsahTotalAmt = gsahTotalAmt;
    }

    public void setGsahTotalQty(TableColumn<AcceptOutData, String> gsahTotalQty) {
        this.gsahTotalQty = gsahTotalQty;
    }

    public void setGsahEmp(TableColumn<AcceptOutData, String> gsahEmp) {
        this.gsahEmp = gsahEmp;
    }

    public void setGsahRemaks(TableColumn<AcceptOutData, String> gsahRemaks) {
        this.gsahRemaks = gsahRemaks;
    }

    public void setGsadSerial(TableColumn<AcceptDetailOutData, String> gsadSerial) {
        this.gsadSerial = gsadSerial;
    }

    public void setGsadProId(TableColumn<AcceptDetailOutData, String> gsadProId) {
        this.gsadProId = gsadProId;
    }

    public void setGsadBatchNo(TableColumn<AcceptDetailOutData, String> gsadBatchNo) {
        this.gsadBatchNo = gsadBatchNo;
    }

    public void setGsadValidDate(TableColumn<AcceptDetailOutData, String> gsadValidDate) {
        this.gsadValidDate = gsadValidDate;
    }

    public void setGsadInvoicesQty(TableColumn<AcceptDetailOutData, String> gsadInvoicesQty) {
        this.gsadInvoicesQty = gsadInvoicesQty;
    }

    public void setGsadRecipientQty(TableColumn<AcceptDetailOutData, String> gsadRecipientQty) {
        this.gsadRecipientQty = gsadRecipientQty;
    }

    public void setGsadStockStatus(TableColumn<AcceptDetailOutData, String> gsadStockStatus) {
        this.gsadStockStatus = gsadStockStatus;
    }

    public void setProName(TableColumn<AcceptDetailOutData, String> proName) {
        this.proName = proName;
    }

    public void setProFactoryName(TableColumn<AcceptDetailOutData, String> proFactoryName) {
        this.proFactoryName = proFactoryName;
    }

    public void setProPlace(TableColumn<AcceptDetailOutData, String> proPlace) {
        this.proPlace = proPlace;
    }

    public void setProPrice(TableColumn<AcceptDetailOutData, String> proPrice) {
        this.proPrice = proPrice;
    }

    public void setProForm(TableColumn<AcceptDetailOutData, String> proForm) {
        this.proForm = proForm;
    }

    public void setProUnit(TableColumn<AcceptDetailOutData, String> proUnit) {
        this.proUnit = proUnit;
    }

    public void setProSpecs(TableColumn<AcceptDetailOutData, String> proSpecs) {
        this.proSpecs = proSpecs;
    }

    public void setPagination(Pagination pagination) {
        this.pagination = pagination;
    }

    public void setTableViewInsets(Insets tableViewInsets) {
        this.tableViewInsets = tableViewInsets;
    }

    public void setAddTypeController(AddTypeController addTypeController) {
        this.addTypeController = addTypeController;
    }

    public void setIndexController(IndexController indexController) {
        this.indexController = indexController;
    }

    public void setOutDataList(List<GetUserOutData> outDataList) {
        this.outDataList = outDataList;
    }

    public void setEmpOptions(ObservableList<String> empOptions) {
        this.empOptions = empOptions;
    }

    public void setEmps(List<String> emps) {
        this.emps = emps;
    }

    public void setEmpsMap(Map<String, GetUserOutData> empsMap) {
        this.empsMap = empsMap;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof AcceptPoController)) {
            return false;
        }
        AcceptPoController other = (AcceptPoController)o;
        if (!other.canEqual(this)) {
            return false;
        }
        if (this.getPageSize() != other.getPageSize()) {
            return false;
        }
        if (this.getDefaultPageCount() != other.getDefaultPageCount()) {
            return false;
        }
        ObservableList<AcceptOutData> this$basicObservableTableList = this.getBasicObservableTableList();
        ObservableList<AcceptOutData> other$basicObservableTableList = other.getBasicObservableTableList();
        if (this$basicObservableTableList == null ? other$basicObservableTableList != null : !this$basicObservableTableList.equals(other$basicObservableTableList)) {
            return false;
        }
        ObservableList<AcceptOutData> this$observableTableList = this.getObservableTableList();
        ObservableList<AcceptOutData> other$observableTableList = other.getObservableTableList();
        if (this$observableTableList == null ? other$observableTableList != null : !this$observableTableList.equals(other$observableTableList)) {
            return false;
        }
        ObservableList<AcceptDetailOutData> this$detailObservableTableList = this.getDetailObservableTableList();
        ObservableList<AcceptDetailOutData> other$detailObservableTableList = other.getDetailObservableTableList();
        if (this$detailObservableTableList == null ? other$detailObservableTableList != null : !this$detailObservableTableList.equals(other$detailObservableTableList)) {
            return false;
        }
        ScrollPane this$scrollPane = this.getScrollPane();
        ScrollPane other$scrollPane = other.getScrollPane();
        if (this$scrollPane == null ? other$scrollPane != null : !this$scrollPane.equals(other$scrollPane)) {
            return false;
        }
        VBox this$vBox = this.getVBox();
        VBox other$vBox = other.getVBox();
        if (this$vBox == null ? other$vBox != null : !this$vBox.equals(other$vBox)) {
            return false;
        }
        Button this$addBtn = this.getAddBtn();
        Button other$addBtn = other.getAddBtn();
        if (this$addBtn == null ? other$addBtn != null : !this$addBtn.equals(other$addBtn)) {
            return false;
        }
        Button this$enterBtn = this.getEnterBtn();
        Button other$enterBtn = other.getEnterBtn();
        if (this$enterBtn == null ? other$enterBtn != null : !this$enterBtn.equals(other$enterBtn)) {
            return false;
        }
        Button this$approveBtn = this.getApproveBtn();
        Button other$approveBtn = other.getApproveBtn();
        if (this$approveBtn == null ? other$approveBtn != null : !this$approveBtn.equals(other$approveBtn)) {
            return false;
        }
        HBox this$queryHbox = this.getQueryHbox();
        HBox other$queryHbox = other.getQueryHbox();
        if (this$queryHbox == null ? other$queryHbox != null : !this$queryHbox.equals(other$queryHbox)) {
            return false;
        }
        HBox this$queryHbox1 = this.getQueryHbox1();
        HBox other$queryHbox1 = other.getQueryHbox1();
        if (this$queryHbox1 == null ? other$queryHbox1 != null : !this$queryHbox1.equals(other$queryHbox1)) {
            return false;
        }
        HBox this$boxView = this.getBoxView();
        HBox other$boxView = other.getBoxView();
        if (this$boxView == null ? other$boxView != null : !this$boxView.equals(other$boxView)) {
            return false;
        }
        TextField this$voucherIdQuery = this.getVoucherIdQuery();
        TextField other$voucherIdQuery = other.getVoucherIdQuery();
        if (this$voucherIdQuery == null ? other$voucherIdQuery != null : !this$voucherIdQuery.equals(other$voucherIdQuery)) {
            return false;
        }
        TextField this$amountQuery = this.getAmountQuery();
        TextField other$amountQuery = other.getAmountQuery();
        if (this$amountQuery == null ? other$amountQuery != null : !this$amountQuery.equals(other$amountQuery)) {
            return false;
        }
        TextField this$bathCodeQuery = this.getBathCodeQuery();
        TextField other$bathCodeQuery = other.getBathCodeQuery();
        if (this$bathCodeQuery == null ? other$bathCodeQuery != null : !this$bathCodeQuery.equals(other$bathCodeQuery)) {
            return false;
        }
        TextField this$productCodeQuery = this.getProductCodeQuery();
        TextField other$productCodeQuery = other.getProductCodeQuery();
        if (this$productCodeQuery == null ? other$productCodeQuery != null : !this$productCodeQuery.equals(other$productCodeQuery)) {
            return false;
        }
        ChoiceBox<GsdcEmp> this$acceptPeopleQuery = this.getAcceptPeopleQuery();
        ChoiceBox<GsdcEmp> other$acceptPeopleQuery = other.getAcceptPeopleQuery();
        if (this$acceptPeopleQuery == null ? other$acceptPeopleQuery != null : !this$acceptPeopleQuery.equals(other$acceptPeopleQuery)) {
            return false;
        }
        ChoiceBox<GsdcStatus> this$statusQuery = this.getStatusQuery();
        ChoiceBox<GsdcStatus> other$statusQuery = other.getStatusQuery();
        if (this$statusQuery == null ? other$statusQuery != null : !this$statusQuery.equals(other$statusQuery)) {
            return false;
        }
        DatePicker this$updateDateQuery = this.getUpdateDateQuery();
        DatePicker other$updateDateQuery = other.getUpdateDateQuery();
        if (this$updateDateQuery == null ? other$updateDateQuery != null : !this$updateDateQuery.equals(other$updateDateQuery)) {
            return false;
        }
        DatePicker this$acceptDateQuery = this.getAcceptDateQuery();
        DatePicker other$acceptDateQuery = other.getAcceptDateQuery();
        if (this$acceptDateQuery == null ? other$acceptDateQuery != null : !this$acceptDateQuery.equals(other$acceptDateQuery)) {
            return false;
        }
        TableView<AcceptOutData> this$tableView = this.getTableView();
        TableView<AcceptOutData> other$tableView = other.getTableView();
        if (this$tableView == null ? other$tableView != null : !this$tableView.equals(other$tableView)) {
            return false;
        }
        TableView<AcceptOutData> this$tableViewTwo = this.getTableViewTwo();
        TableView<AcceptOutData> other$tableViewTwo = other.getTableViewTwo();
        if (this$tableViewTwo == null ? other$tableViewTwo != null : !this$tableViewTwo.equals(other$tableViewTwo)) {
            return false;
        }
        TableView<AcceptDetailOutData> this$tableViewThree = this.getTableViewThree();
        TableView<AcceptDetailOutData> other$tableViewThree = other.getTableViewThree();
        if (this$tableViewThree == null ? other$tableViewThree != null : !this$tableViewThree.equals(other$tableViewThree)) {
            return false;
        }
        TableColumn<AcceptOutData, CheckBox> this$checkBox = this.getCheckBox();
        TableColumn<AcceptOutData, CheckBox> other$checkBox = other.getCheckBox();
        if (this$checkBox == null ? other$checkBox != null : !this$checkBox.equals(other$checkBox)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$index = this.getIndex();
        TableColumn<AcceptOutData, String> other$index = other.getIndex();
        if (this$index == null ? other$index != null : !this$index.equals(other$index)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahPoid = this.getGsahPoid();
        TableColumn<AcceptOutData, String> other$gsahPoid = other.getGsahPoid();
        if (this$gsahPoid == null ? other$gsahPoid != null : !this$gsahPoid.equals(other$gsahPoid)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$orderDate = this.getOrderDate();
        TableColumn<AcceptOutData, String> other$orderDate = other.getOrderDate();
        if (this$orderDate == null ? other$orderDate != null : !this$orderDate.equals(other$orderDate)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahDeparturePlace = this.getGsahDeparturePlace();
        TableColumn<AcceptOutData, String> other$gsahDeparturePlace = other.getGsahDeparturePlace();
        if (this$gsahDeparturePlace == null ? other$gsahDeparturePlace != null : !this$gsahDeparturePlace.equals(other$gsahDeparturePlace)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahDepartureTime = this.getGsahDepartureTime();
        TableColumn<AcceptOutData, String> other$gsahDepartureTime = other.getGsahDepartureTime();
        if (this$gsahDepartureTime == null ? other$gsahDepartureTime != null : !this$gsahDepartureTime.equals(other$gsahDepartureTime)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahDepartureTemperature = this.getGsahDepartureTemperature();
        TableColumn<AcceptOutData, String> other$gsahDepartureTemperature = other.getGsahDepartureTemperature();
        if (this$gsahDepartureTemperature == null ? other$gsahDepartureTemperature != null : !this$gsahDepartureTemperature.equals(other$gsahDepartureTemperature)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahArriveDate = this.getGsahArriveDate();
        TableColumn<AcceptOutData, String> other$gsahArriveDate = other.getGsahArriveDate();
        if (this$gsahArriveDate == null ? other$gsahArriveDate != null : !this$gsahArriveDate.equals(other$gsahArriveDate)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahArriveTime = this.getGsahArriveTime();
        TableColumn<AcceptOutData, String> other$gsahArriveTime = other.getGsahArriveTime();
        if (this$gsahArriveTime == null ? other$gsahArriveTime != null : !this$gsahArriveTime.equals(other$gsahArriveTime)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahArriveTemperature = this.getGsahArriveTemperature();
        TableColumn<AcceptOutData, String> other$gsahArriveTemperature = other.getGsahArriveTemperature();
        if (this$gsahArriveTemperature == null ? other$gsahArriveTemperature != null : !this$gsahArriveTemperature.equals(other$gsahArriveTemperature)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahTransportOrganization = this.getGsahTransportOrganization();
        TableColumn<AcceptOutData, String> other$gsahTransportOrganization = other.getGsahTransportOrganization();
        if (this$gsahTransportOrganization == null ? other$gsahTransportOrganization != null : !this$gsahTransportOrganization.equals(other$gsahTransportOrganization)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahTransportMode = this.getGsahTransportMode();
        TableColumn<AcceptOutData, String> other$gsahTransportMode = other.getGsahTransportMode();
        if (this$gsahTransportMode == null ? other$gsahTransportMode != null : !this$gsahTransportMode.equals(other$gsahTransportMode)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahVoucherId = this.getGsahVoucherId();
        TableColumn<AcceptOutData, String> other$gsahVoucherId = other.getGsahVoucherId();
        if (this$gsahVoucherId == null ? other$gsahVoucherId != null : !this$gsahVoucherId.equals(other$gsahVoucherId)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahDate = this.getGsahDate();
        TableColumn<AcceptOutData, String> other$gsahDate = other.getGsahDate();
        if (this$gsahDate == null ? other$gsahDate != null : !this$gsahDate.equals(other$gsahDate)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahFrom = this.getGsahFrom();
        TableColumn<AcceptOutData, String> other$gsahFrom = other.getGsahFrom();
        if (this$gsahFrom == null ? other$gsahFrom != null : !this$gsahFrom.equals(other$gsahFrom)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahTo = this.getGsahTo();
        TableColumn<AcceptOutData, String> other$gsahTo = other.getGsahTo();
        if (this$gsahTo == null ? other$gsahTo != null : !this$gsahTo.equals(other$gsahTo)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahType = this.getGsahType();
        TableColumn<AcceptOutData, String> other$gsahType = other.getGsahType();
        if (this$gsahType == null ? other$gsahType != null : !this$gsahType.equals(other$gsahType)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahStatus = this.getGsahStatus();
        TableColumn<AcceptOutData, String> other$gsahStatus = other.getGsahStatus();
        if (this$gsahStatus == null ? other$gsahStatus != null : !this$gsahStatus.equals(other$gsahStatus)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahTotalAmt = this.getGsahTotalAmt();
        TableColumn<AcceptOutData, String> other$gsahTotalAmt = other.getGsahTotalAmt();
        if (this$gsahTotalAmt == null ? other$gsahTotalAmt != null : !this$gsahTotalAmt.equals(other$gsahTotalAmt)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahTotalQty = this.getGsahTotalQty();
        TableColumn<AcceptOutData, String> other$gsahTotalQty = other.getGsahTotalQty();
        if (this$gsahTotalQty == null ? other$gsahTotalQty != null : !this$gsahTotalQty.equals(other$gsahTotalQty)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahEmp = this.getGsahEmp();
        TableColumn<AcceptOutData, String> other$gsahEmp = other.getGsahEmp();
        if (this$gsahEmp == null ? other$gsahEmp != null : !this$gsahEmp.equals(other$gsahEmp)) {
            return false;
        }
        TableColumn<AcceptOutData, String> this$gsahRemaks = this.getGsahRemaks();
        TableColumn<AcceptOutData, String> other$gsahRemaks = other.getGsahRemaks();
        if (this$gsahRemaks == null ? other$gsahRemaks != null : !this$gsahRemaks.equals(other$gsahRemaks)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadSerial = this.getGsadSerial();
        TableColumn<AcceptDetailOutData, String> other$gsadSerial = other.getGsadSerial();
        if (this$gsadSerial == null ? other$gsadSerial != null : !this$gsadSerial.equals(other$gsadSerial)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadProId = this.getGsadProId();
        TableColumn<AcceptDetailOutData, String> other$gsadProId = other.getGsadProId();
        if (this$gsadProId == null ? other$gsadProId != null : !this$gsadProId.equals(other$gsadProId)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadBatchNo = this.getGsadBatchNo();
        TableColumn<AcceptDetailOutData, String> other$gsadBatchNo = other.getGsadBatchNo();
        if (this$gsadBatchNo == null ? other$gsadBatchNo != null : !this$gsadBatchNo.equals(other$gsadBatchNo)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadValidDate = this.getGsadValidDate();
        TableColumn<AcceptDetailOutData, String> other$gsadValidDate = other.getGsadValidDate();
        if (this$gsadValidDate == null ? other$gsadValidDate != null : !this$gsadValidDate.equals(other$gsadValidDate)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadInvoicesQty = this.getGsadInvoicesQty();
        TableColumn<AcceptDetailOutData, String> other$gsadInvoicesQty = other.getGsadInvoicesQty();
        if (this$gsadInvoicesQty == null ? other$gsadInvoicesQty != null : !this$gsadInvoicesQty.equals(other$gsadInvoicesQty)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadRecipientQty = this.getGsadRecipientQty();
        TableColumn<AcceptDetailOutData, String> other$gsadRecipientQty = other.getGsadRecipientQty();
        if (this$gsadRecipientQty == null ? other$gsadRecipientQty != null : !this$gsadRecipientQty.equals(other$gsadRecipientQty)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$gsadStockStatus = this.getGsadStockStatus();
        TableColumn<AcceptDetailOutData, String> other$gsadStockStatus = other.getGsadStockStatus();
        if (this$gsadStockStatus == null ? other$gsadStockStatus != null : !this$gsadStockStatus.equals(other$gsadStockStatus)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proName = this.getProName();
        TableColumn<AcceptDetailOutData, String> other$proName = other.getProName();
        if (this$proName == null ? other$proName != null : !this$proName.equals(other$proName)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proFactoryName = this.getProFactoryName();
        TableColumn<AcceptDetailOutData, String> other$proFactoryName = other.getProFactoryName();
        if (this$proFactoryName == null ? other$proFactoryName != null : !this$proFactoryName.equals(other$proFactoryName)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proPlace = this.getProPlace();
        TableColumn<AcceptDetailOutData, String> other$proPlace = other.getProPlace();
        if (this$proPlace == null ? other$proPlace != null : !this$proPlace.equals(other$proPlace)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proPrice = this.getProPrice();
        TableColumn<AcceptDetailOutData, String> other$proPrice = other.getProPrice();
        if (this$proPrice == null ? other$proPrice != null : !this$proPrice.equals(other$proPrice)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proForm = this.getProForm();
        TableColumn<AcceptDetailOutData, String> other$proForm = other.getProForm();
        if (this$proForm == null ? other$proForm != null : !this$proForm.equals(other$proForm)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proUnit = this.getProUnit();
        TableColumn<AcceptDetailOutData, String> other$proUnit = other.getProUnit();
        if (this$proUnit == null ? other$proUnit != null : !this$proUnit.equals(other$proUnit)) {
            return false;
        }
        TableColumn<AcceptDetailOutData, String> this$proSpecs = this.getProSpecs();
        TableColumn<AcceptDetailOutData, String> other$proSpecs = other.getProSpecs();
        if (this$proSpecs == null ? other$proSpecs != null : !this$proSpecs.equals(other$proSpecs)) {
            return false;
        }
        Pagination this$pagination = this.getPagination();
        Pagination other$pagination = other.getPagination();
        if (this$pagination == null ? other$pagination != null : !this$pagination.equals(other$pagination)) {
            return false;
        }
        Insets this$tableViewInsets = this.getTableViewInsets();
        Insets other$tableViewInsets = other.getTableViewInsets();
        if (this$tableViewInsets == null ? other$tableViewInsets != null : !this$tableViewInsets.equals(other$tableViewInsets)) {
            return false;
        }
        AddTypeController this$addTypeController = this.getAddTypeController();
        AddTypeController other$addTypeController = other.getAddTypeController();
        if (this$addTypeController == null ? other$addTypeController != null : !(this$addTypeController).equals(other$addTypeController)) {
            return false;
        }
        IndexController this$indexController = this.getIndexController();
        IndexController other$indexController = other.getIndexController();
        if (this$indexController == null ? other$indexController != null : !(this$indexController).equals(other$indexController)) {
            return false;
        }
        List<GetUserOutData> this$outDataList = this.getOutDataList();
        List<GetUserOutData> other$outDataList = other.getOutDataList();
        if (this$outDataList == null ? other$outDataList != null : !(this$outDataList).equals(other$outDataList)) {
            return false;
        }
        ObservableList<String> this$empOptions = this.getEmpOptions();
        ObservableList<String> other$empOptions = other.getEmpOptions();
        if (this$empOptions == null ? other$empOptions != null : !this$empOptions.equals(other$empOptions)) {
            return false;
        }
        List<String> this$emps = this.getEmps();
        List<String> other$emps = other.getEmps();
        if (this$emps == null ? other$emps != null : !(this$emps).equals(other$emps)) {
            return false;
        }
        Map<String, GetUserOutData> this$empsMap = this.getEmpsMap();
        Map<String, GetUserOutData> other$empsMap = other.getEmpsMap();
        return !(this$empsMap == null ? other$empsMap != null : !(this$empsMap).equals(other$empsMap));
    }

    protected boolean canEqual(Object other) {
        return other instanceof AcceptPoController;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        result = result * 59 + this.getPageSize();
        result = result * 59 + this.getDefaultPageCount();
        ObservableList<AcceptOutData> $basicObservableTableList = this.getBasicObservableTableList();
        result = result * 59 + ($basicObservableTableList == null ? 43 : $basicObservableTableList.hashCode());
        ObservableList<AcceptOutData> $observableTableList = this.getObservableTableList();
        result = result * 59 + ($observableTableList == null ? 43 : $observableTableList.hashCode());
        ObservableList<AcceptDetailOutData> $detailObservableTableList = this.getDetailObservableTableList();
        result = result * 59 + ($detailObservableTableList == null ? 43 : $detailObservableTableList.hashCode());
        ScrollPane $scrollPane = this.getScrollPane();
        result = result * 59 + ($scrollPane == null ? 43 : $scrollPane.hashCode());
        VBox $vBox = this.getVBox();
        result = result * 59 + ($vBox == null ? 43 : $vBox.hashCode());
        Button $addBtn = this.getAddBtn();
        result = result * 59 + ($addBtn == null ? 43 : $addBtn.hashCode());
        Button $enterBtn = this.getEnterBtn();
        result = result * 59 + ($enterBtn == null ? 43 : $enterBtn.hashCode());
        Button $approveBtn = this.getApproveBtn();
        result = result * 59 + ($approveBtn == null ? 43 : $approveBtn.hashCode());
        HBox $queryHbox = this.getQueryHbox();
        result = result * 59 + ($queryHbox == null ? 43 : $queryHbox.hashCode());
        HBox $queryHbox1 = this.getQueryHbox1();
        result = result * 59 + ($queryHbox1 == null ? 43 : $queryHbox1.hashCode());
        HBox $boxView = this.getBoxView();
        result = result * 59 + ($boxView == null ? 43 : $boxView.hashCode());
        TextField $voucherIdQuery = this.getVoucherIdQuery();
        result = result * 59 + ($voucherIdQuery == null ? 43 : $voucherIdQuery.hashCode());
        TextField $amountQuery = this.getAmountQuery();
        result = result * 59 + ($amountQuery == null ? 43 : $amountQuery.hashCode());
        TextField $bathCodeQuery = this.getBathCodeQuery();
        result = result * 59 + ($bathCodeQuery == null ? 43 : $bathCodeQuery.hashCode());
        TextField $productCodeQuery = this.getProductCodeQuery();
        result = result * 59 + ($productCodeQuery == null ? 43 : $productCodeQuery.hashCode());
        ChoiceBox<GsdcEmp> $acceptPeopleQuery = this.getAcceptPeopleQuery();
        result = result * 59 + ($acceptPeopleQuery == null ? 43 : $acceptPeopleQuery.hashCode());
        ChoiceBox<GsdcStatus> $statusQuery = this.getStatusQuery();
        result = result * 59 + ($statusQuery == null ? 43 : $statusQuery.hashCode());
        DatePicker $updateDateQuery = this.getUpdateDateQuery();
        result = result * 59 + ($updateDateQuery == null ? 43 : $updateDateQuery.hashCode());
        DatePicker $acceptDateQuery = this.getAcceptDateQuery();
        result = result * 59 + ($acceptDateQuery == null ? 43 : $acceptDateQuery.hashCode());
        TableView<AcceptOutData> $tableView = this.getTableView();
        result = result * 59 + ($tableView == null ? 43 : $tableView.hashCode());
        TableView<AcceptOutData> $tableViewTwo = this.getTableViewTwo();
        result = result * 59 + ($tableViewTwo == null ? 43 : $tableViewTwo.hashCode());
        TableView<AcceptDetailOutData> $tableViewThree = this.getTableViewThree();
        result = result * 59 + ($tableViewThree == null ? 43 : $tableViewThree.hashCode());
        TableColumn<AcceptOutData, CheckBox> $checkBox = this.getCheckBox();
        result = result * 59 + ($checkBox == null ? 43 : $checkBox.hashCode());
        TableColumn<AcceptOutData, String> $index = this.getIndex();
        result = result * 59 + ($index == null ? 43 : $index.hashCode());
        TableColumn<AcceptOutData, String> $gsahPoid = this.getGsahPoid();
        result = result * 59 + ($gsahPoid == null ? 43 : $gsahPoid.hashCode());
        TableColumn<AcceptOutData, String> $orderDate = this.getOrderDate();
        result = result * 59 + ($orderDate == null ? 43 : $orderDate.hashCode());
        TableColumn<AcceptOutData, String> $gsahDeparturePlace = this.getGsahDeparturePlace();
        result = result * 59 + ($gsahDeparturePlace == null ? 43 : $gsahDeparturePlace.hashCode());
        TableColumn<AcceptOutData, String> $gsahDepartureTime = this.getGsahDepartureTime();
        result = result * 59 + ($gsahDepartureTime == null ? 43 : $gsahDepartureTime.hashCode());
        TableColumn<AcceptOutData, String> $gsahDepartureTemperature = this.getGsahDepartureTemperature();
        result = result * 59 + ($gsahDepartureTemperature == null ? 43 : $gsahDepartureTemperature.hashCode());
        TableColumn<AcceptOutData, String> $gsahArriveDate = this.getGsahArriveDate();
        result = result * 59 + ($gsahArriveDate == null ? 43 : $gsahArriveDate.hashCode());
        TableColumn<AcceptOutData, String> $gsahArriveTime = this.getGsahArriveTime();
        result = result * 59 + ($gsahArriveTime == null ? 43 : $gsahArriveTime.hashCode());
        TableColumn<AcceptOutData, String> $gsahArriveTemperature = this.getGsahArriveTemperature();
        result = result * 59 + ($gsahArriveTemperature == null ? 43 : $gsahArriveTemperature.hashCode());
        TableColumn<AcceptOutData, String> $gsahTransportOrganization = this.getGsahTransportOrganization();
        result = result * 59 + ($gsahTransportOrganization == null ? 43 : $gsahTransportOrganization.hashCode());
        TableColumn<AcceptOutData, String> $gsahTransportMode = this.getGsahTransportMode();
        result = result * 59 + ($gsahTransportMode == null ? 43 : $gsahTransportMode.hashCode());
        TableColumn<AcceptOutData, String> $gsahVoucherId = this.getGsahVoucherId();
        result = result * 59 + ($gsahVoucherId == null ? 43 : $gsahVoucherId.hashCode());
        TableColumn<AcceptOutData, String> $gsahDate = this.getGsahDate();
        result = result * 59 + ($gsahDate == null ? 43 : $gsahDate.hashCode());
        TableColumn<AcceptOutData, String> $gsahFrom = this.getGsahFrom();
        result = result * 59 + ($gsahFrom == null ? 43 : $gsahFrom.hashCode());
        TableColumn<AcceptOutData, String> $gsahTo = this.getGsahTo();
        result = result * 59 + ($gsahTo == null ? 43 : $gsahTo.hashCode());
        TableColumn<AcceptOutData, String> $gsahType = this.getGsahType();
        result = result * 59 + ($gsahType == null ? 43 : $gsahType.hashCode());
        TableColumn<AcceptOutData, String> $gsahStatus = this.getGsahStatus();
        result = result * 59 + ($gsahStatus == null ? 43 : $gsahStatus.hashCode());
        TableColumn<AcceptOutData, String> $gsahTotalAmt = this.getGsahTotalAmt();
        result = result * 59 + ($gsahTotalAmt == null ? 43 : $gsahTotalAmt.hashCode());
        TableColumn<AcceptOutData, String> $gsahTotalQty = this.getGsahTotalQty();
        result = result * 59 + ($gsahTotalQty == null ? 43 : $gsahTotalQty.hashCode());
        TableColumn<AcceptOutData, String> $gsahEmp = this.getGsahEmp();
        result = result * 59 + ($gsahEmp == null ? 43 : $gsahEmp.hashCode());
        TableColumn<AcceptOutData, String> $gsahRemaks = this.getGsahRemaks();
        result = result * 59 + ($gsahRemaks == null ? 43 : $gsahRemaks.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadSerial = this.getGsadSerial();
        result = result * 59 + ($gsadSerial == null ? 43 : $gsadSerial.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadProId = this.getGsadProId();
        result = result * 59 + ($gsadProId == null ? 43 : $gsadProId.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadBatchNo = this.getGsadBatchNo();
        result = result * 59 + ($gsadBatchNo == null ? 43 : $gsadBatchNo.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadValidDate = this.getGsadValidDate();
        result = result * 59 + ($gsadValidDate == null ? 43 : $gsadValidDate.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadInvoicesQty = this.getGsadInvoicesQty();
        result = result * 59 + ($gsadInvoicesQty == null ? 43 : $gsadInvoicesQty.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadRecipientQty = this.getGsadRecipientQty();
        result = result * 59 + ($gsadRecipientQty == null ? 43 : $gsadRecipientQty.hashCode());
        TableColumn<AcceptDetailOutData, String> $gsadStockStatus = this.getGsadStockStatus();
        result = result * 59 + ($gsadStockStatus == null ? 43 : $gsadStockStatus.hashCode());
        TableColumn<AcceptDetailOutData, String> $proName = this.getProName();
        result = result * 59 + ($proName == null ? 43 : $proName.hashCode());
        TableColumn<AcceptDetailOutData, String> $proFactoryName = this.getProFactoryName();
        result = result * 59 + ($proFactoryName == null ? 43 : $proFactoryName.hashCode());
        TableColumn<AcceptDetailOutData, String> $proPlace = this.getProPlace();
        result = result * 59 + ($proPlace == null ? 43 : $proPlace.hashCode());
        TableColumn<AcceptDetailOutData, String> $proPrice = this.getProPrice();
        result = result * 59 + ($proPrice == null ? 43 : $proPrice.hashCode());
        TableColumn<AcceptDetailOutData, String> $proForm = this.getProForm();
        result = result * 59 + ($proForm == null ? 43 : $proForm.hashCode());
        TableColumn<AcceptDetailOutData, String> $proUnit = this.getProUnit();
        result = result * 59 + ($proUnit == null ? 43 : $proUnit.hashCode());
        TableColumn<AcceptDetailOutData, String> $proSpecs = this.getProSpecs();
        result = result * 59 + ($proSpecs == null ? 43 : $proSpecs.hashCode());
        Pagination $pagination = this.getPagination();
        result = result * 59 + ($pagination == null ? 43 : $pagination.hashCode());
        Insets $tableViewInsets = this.getTableViewInsets();
        result = result * 59 + ($tableViewInsets == null ? 43 : $tableViewInsets.hashCode());
        AddTypeController $addTypeController = this.getAddTypeController();
        result = result * 59 + ($addTypeController == null ? 43 : ($addTypeController).hashCode());
        IndexController $indexController = this.getIndexController();
        result = result * 59 + ($indexController == null ? 43 : ($indexController).hashCode());
        List<GetUserOutData> $outDataList = this.getOutDataList();
        result = result * 59 + ($outDataList == null ? 43 : ($outDataList).hashCode());
        ObservableList<String> $empOptions = this.getEmpOptions();
        result = result * 59 + ($empOptions == null ? 43 : $empOptions.hashCode());
        List<String> $emps = this.getEmps();
        result = result * 59 + ($emps == null ? 43 : ($emps).hashCode());
        Map<String, GetUserOutData> $empsMap = this.getEmpsMap();
        result = result * 59 + ($empsMap == null ? 43 : ($empsMap).hashCode());
        return result;
    }

    public String toString() {
        return "AcceptPoController(pageSize=" + this.getPageSize() + ", defaultPageCount=" + this.getDefaultPageCount() + ", basicObservableTableList=" + this.getBasicObservableTableList() + ", observableTableList=" + this.getObservableTableList() + ", detailObservableTableList=" + this.getDetailObservableTableList() + ", scrollPane=" + this.getScrollPane() + ", vBox=" + this.getVBox() + ", addBtn=" + this.getAddBtn() + ", enterBtn=" + this.getEnterBtn() + ", approveBtn=" + this.getApproveBtn() + ", queryHbox=" + this.getQueryHbox() + ", queryHbox1=" + this.getQueryHbox1() + ", boxView=" + this.getBoxView() + ", voucherIdQuery=" + this.getVoucherIdQuery() + ", amountQuery=" + this.getAmountQuery() + ", bathCodeQuery=" + this.getBathCodeQuery() + ", productCodeQuery=" + this.getProductCodeQuery() + ", acceptPeopleQuery=" + this.getAcceptPeopleQuery() + ", statusQuery=" + this.getStatusQuery() + ", updateDateQuery=" + this.getUpdateDateQuery() + ", acceptDateQuery=" + this.getAcceptDateQuery() + ", tableView=" + this.getTableView() + ", tableViewTwo=" + this.getTableViewTwo() + ", tableViewThree=" + this.getTableViewThree() + ", checkBox=" + this.getCheckBox() + ", index=" + this.getIndex() + ", gsahPoid=" + this.getGsahPoid() + ", orderDate=" + this.getOrderDate() + ", gsahDeparturePlace=" + this.getGsahDeparturePlace() + ", gsahDepartureTime=" + this.getGsahDepartureTime() + ", gsahDepartureTemperature=" + this.getGsahDepartureTemperature() + ", gsahArriveDate=" + this.getGsahArriveDate() + ", gsahArriveTime=" + this.getGsahArriveTime() + ", gsahArriveTemperature=" + this.getGsahArriveTemperature() + ", gsahTransportOrganization=" + this.getGsahTransportOrganization() + ", gsahTransportMode=" + this.getGsahTransportMode() + ", gsahVoucherId=" + this.getGsahVoucherId() + ", gsahDate=" + this.getGsahDate() + ", gsahFrom=" + this.getGsahFrom() + ", gsahTo=" + this.getGsahTo() + ", gsahType=" + this.getGsahType() + ", gsahStatus=" + this.getGsahStatus() + ", gsahTotalAmt=" + this.getGsahTotalAmt() + ", gsahTotalQty=" + this.getGsahTotalQty() + ", gsahEmp=" + this.getGsahEmp() + ", gsahRemaks=" + this.getGsahRemaks() + ", gsadSerial=" + this.getGsadSerial() + ", gsadProId=" + this.getGsadProId() + ", gsadBatchNo=" + this.getGsadBatchNo() + ", gsadValidDate=" + this.getGsadValidDate() + ", gsadInvoicesQty=" + this.getGsadInvoicesQty() + ", gsadRecipientQty=" + this.getGsadRecipientQty() + ", gsadStockStatus=" + this.getGsadStockStatus() + ", proName=" + this.getProName() + ", proFactoryName=" + this.getProFactoryName() + ", proPlace=" + this.getProPlace() + ", proPrice=" + this.getProPrice() + ", proForm=" + this.getProForm() + ", proUnit=" + this.getProUnit() + ", proSpecs=" + this.getProSpecs() + ", pagination=" + this.getPagination() + ", tableViewInsets=" + this.getTableViewInsets() + ", addTypeController=" + this.getAddTypeController() + ", indexController=" + this.getIndexController() + ", outDataList=" + this.getOutDataList() + ", empOptions=" + this.getEmpOptions() + ", emps=" + this.getEmps() + ", empsMap=" + this.getEmpsMap() + ")";
    }

    private void lambda$null$10(TableCell cell, ComboBox combo, ActionEvent e) {
        int rank = cell.getIndex();
        String cloumName = cell.getId();
        String value = (String)combo.getValue();
        AcceptOutData outData = (AcceptOutData)this.observableTableList.get(rank);
        String methodName = CommonUtil.getSetMethod(cloumName);
        try {
            Method method = AcceptOutData.class.getMethod(methodName, String.class);
            method.invoke(outData, value);
        }
        catch (Exception ex) {
            throw new RuntimeException("\u6ca1\u6709\u65b9\u6cd5" + methodName);
        }
    }


}

